package br.com.fiap.trabalho.dao;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import br.com.fiap.trabalho.dto.ClienteDTO;
import br.com.fiap.trabalho.entity.Cliente;

/**
 * Session Bean implementation class ClienteDAO
 */
@Stateless(mappedName = "dao/ClienteDAO")
public class ClienteDAOImpl implements ClienteDAO {
	
	@PersistenceContext(unitName="TrabalhoEJBPersistence")
	private EntityManager manager;
	
    /**
     * Default constructor. 
     */
    public ClienteDAOImpl() {
       super();
    }

	@Override
	public ClienteDTO create(ClienteDTO dto) {
		Cliente cliente = parseDTOToEntity(dto);
		
		manager.persist(cliente);
		
		manager.refresh(cliente);
		
		return parseEntityToDTO(cliente);
	}
	
	private Cliente parseDTOToEntity(ClienteDTO dto){
		Cliente cliente = new Cliente();
		// TODO passar propriedades do dto para o entity
		return cliente;
	}
	
	
	private ClienteDTO parseEntityToDTO(Cliente entity){
		ClienteDTO cliente = new ClienteDTO();
		// TODO passar propriedades do entity para o dto
		return cliente;
	}
    
    

}
